package com.industrial.premu.service;

import java.io.InputStream;
import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

import com.industrial.common.core.web.domain.AjaxResult;
import com.industrial.premu.domain.PreMuCustomIndicator;
import com.industrial.premu.domain.sqsj.PreMuImportCustomIndexLj;
import com.industrial.premu.dto.PreMuCustomIndicatorDto;
import com.industrial.premu.vo.PreMuImportCustomIndexLjVo;
import org.apache.poi.ss.usermodel.Workbook;

/**
 * 亩产自定义指标Service接口
 * 
 * @author ZhouS
 * @date 2024-01-23
 */
public interface IPreMuCustomIndicatorService 
{
    /**
     * 查询亩产自定义指标
     * 
     * @param id 亩产自定义指标主键
     * @return 亩产自定义指标
     */
    public PreMuCustomIndicator selectPreMuCustomIndicatorById(String id);

    /**
     * 查询亩产自定义指标列表
     * 
     * @param preMuCustomIndicator 亩产自定义指标
     * @return 亩产自定义指标集合
     */
    public List<PreMuCustomIndicator> selectPreMuCustomIndicatorList(PreMuCustomIndicator preMuCustomIndicator);

    /**
     * 新增亩产自定义指标
     * 
     * @param preMuCustomIndicator 亩产自定义指标
     * @return 结果
     */
    public int insertPreMuCustomIndicator(PreMuCustomIndicator preMuCustomIndicator);

    /**
     * 修改亩产自定义指标
     * 
     * @param preMuCustomIndicator 亩产自定义指标
     * @return 结果
     */
    public int updatePreMuCustomIndicator(PreMuCustomIndicator preMuCustomIndicator);

    /**
     * 批量删除亩产自定义指标
     * 
     * @param ids 需要删除的亩产自定义指标主键集合
     * @return 结果
     */
    public int deletePreMuCustomIndicatorByIds(String[] ids);

    /**
     * 删除亩产自定义指标信息
     * 
     * @param id 亩产自定义指标主键
     * @return 结果
     */
    public int deletePreMuCustomIndicatorById(String id);

    Workbook createTemplateWb(PreMuCustomIndicator paramMap);

    BigDecimal getSumScoreByCountyAndCompanyType(PreMuCustomIndicator paramMap);

    AjaxResult importData(String year, String s, InputStream inputStream);

    List<PreMuImportCustomIndexLj> selectImportList(PreMuCustomIndicatorDto queryParams);

    AjaxResult removeData(PreMuCustomIndicator queryParams,String deptCode);

    List<PreMuImportCustomIndexLjVo> getIndexLjVoList(PreMuImportCustomIndexLj indexLj);
}
